package com.kettle.controllerapis;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import com.kettle.config.aop.ControllerWebLog;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.multipart.MultipartFile;

import com.kettle.model.kettle.Kettlemap;
import com.kettle.model.kettle.Kettlework;
import com.kettle.model.quartz.ReturnResult;
import com.kettle.model.rowpage.PageResult;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

@Api(tags = "kettle控制接口模块")
public interface KettleControllerApi {
	
	 @ApiOperation(value = "主页展示", notes="操作主页地址")
	 @ControllerWebLog(name = "主页展示", intoDb = false)
	 public String index(Model model);
	 
	 
	 @ApiOperation(value = "立即执行一个工作quartz")
	 @ControllerWebLog(name = "立即执行一个工作quartz", intoDb = false)
	 public Kettlemap kettlequeatzjob(HttpServletRequest request, String requestBody);


	 @ApiOperation(value = "新增保存工作任务")
	 @ControllerWebLog(name = "新增保存工作任务", intoDb = false)
	 public ReturnResult kettlesave(Model model,Kettlework kettlework);


	 @ApiOperation(value = "修改保存工作任务")
	 @ControllerWebLog(name = "修改保存工作任务", intoDb = false)
	 public ReturnResult kettleupdate(Kettlework kettlework);


	 @ApiOperation(value = "删除工作任务")
	 @ControllerWebLog(name = "删除工作任务", intoDb = false)
	 public ReturnResult kettledelete(Model model, String id);


	@ApiOperation(value = "上传任务附件")
	@ControllerWebLog(name = "上传任务附件", intoDb = false)
	public Map<String, Object> ksaveorup(HttpServletRequest request,Kettlework kettlework, MultipartFile[] multipartfile);


	@ApiOperation(value = "job是否正在执行")
	@ControllerWebLog(name = "job是否正在执行", intoDb = false)
	public Kettlemap sfzxz(HttpServletRequest request, String requestBody);


	@ApiOperation(value = "立即执行一个工作")
	@ControllerWebLog(name = "立即执行一个工作", intoDb = false)
	public Kettlemap kettlesendJob(HttpServletRequest request, String requestBody);


	@ApiOperation(value = "立即执行一个转换")
	@ControllerWebLog(name = "立即执行一个转换", intoDb = false)
	public Kettlemap kettlesendTran(HttpServletRequest request, String requestBody);

	@ApiOperation(value = "查询任务列表")
	@ControllerWebLog(name = "查询任务列表", intoDb = false)
	public PageResult kettlelist(Model model, String title, Integer page, Integer rows);
	 
}
